package com.tedu.api.thread;

/**
 * JDK1.8  新语法  支持Lambda写法：广泛应用项目中
 * Lambda表达式--->简化：集合【遍历集合，过滤文件方法】，
 *           “接口创建，抽象类创建，匿名内部类”，Comparator的创建【函数式遍历】
 * Lambda功能性接口--实现：有一个方法的接口，并且可以打印对应的数据
 * Lambda表达式的语法：()->{}
 *
 * 1.创建接口Insert---使用子类的方式实现接口
 * 2.创建接口Insert----匿名内部类方式 实现接口
 * 3.创建Lambda表达式---接口创建
 */
public class LambdaDemo {
    public static void main(String[] args) {
          /* Insert insert=new Insert() {
           public long Dian(long money,int day) {
               System.out.println("一台电脑插入插排上");
               return 1L;
           }
        };
        insert.Dian(10,1);*/

        // Lambda 表达式方法 ()->{}
        /**第一种 Lambda 表达式方法支持：接口使用匿名内部类方式创建
         * ()代表方法的参数：无参数情况---不可以删除
         *                有很多参数---1个参数---可以删除
         *                           2个参数---不可以删除
         * -> 代表new创建对象过程
         * {} 代表方法中实现：返回值 void 直接输出语句---去掉{}
         *                 返回值  集合   不可以去掉花括号{}
         *                 返回值 java数据类型   不可以去掉{}
         */
        Insert insert=(money,day)->{return 1L;};
        long dian=insert.Dian(10,1);
        System.out.println("用了多少电"+dian+"°");//打印对象
    }
}
//创建接口 Insert
interface Insert{
    public long Dian(long money,int day );
        }

//创建子类  实现Insert
//class Computer implements Insert{
//    public long Dian(long money) {
//        return 100;
//    }
//}


